package org.cainiao.jvm.other;

/**
 * <br />
 * <p>
 * Author: Cai Niao(wdhlzd@163.com)<br />
 */
public class User extends Parent {

    public static String id;
    private static final Parent PARENT = new Parent();
    private static final String STATUS = "success";
    private static final int COLOR = 2;

    private String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        System.out.println(id);
        System.out.println(PARENT);
        System.out.println(STATUS);
        System.out.println(COLOR);
        System.out.println(parentName);
        this.name = name;
    }

/*
Classfile /D:/Project/CaiNiao/test/test-java/other/src/main/java/org/cainiao/basic/compile/User.class
  Last modified 2024年3月9日; size 906 bytes
  SHA-256 checksum 23bc53a9021c55ccad4558d769c761fe29808d74a531318bf4961492cd0a231d
  Compiled from "User.java"
public class org.cainiao.basic.compile.User extends org.cainiao.basic.compile.Parent
  minor version: 0
  major version: 61
  flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: #8                          // org/cainiao/basic/compile/User
  super_class: #2                         // org/cainiao/basic/compile/Parent
  interfaces: 0, fields: 5, methods: 4, attributes: 1
Constant pool:
   #1 = Methodref          #2.#3          // org/cainiao/basic/compile/Parent."<init>":()V
   #2 = Class              #4             // org/cainiao/basic/compile/Parent
   #3 = NameAndType        #5:#6          // "<init>":()V
   #4 = Utf8               org/cainiao/basic/compile/Parent
   #5 = Utf8               <init>
   #6 = Utf8               ()V
   #7 = Fieldref           #8.#9          // org/cainiao/basic/compile/User.name:Ljava/lang/String;
   #8 = Class              #10            // org/cainiao/basic/compile/User
   #9 = NameAndType        #11:#12        // name:Ljava/lang/String;
  #10 = Utf8               org/cainiao/basic/compile/User
  #11 = Utf8               name
  #12 = Utf8               Ljava/lang/String;
  #13 = Fieldref           #14.#15        // java/lang/System.out:Ljava/io/PrintStream;
  #14 = Class              #16            // java/lang/System
  #15 = NameAndType        #17:#18        // out:Ljava/io/PrintStream;
  #16 = Utf8               java/lang/System
  #17 = Utf8               out
  #18 = Utf8               Ljava/io/PrintStream;
  #19 = Fieldref           #8.#20         // org/cainiao/basic/compile/User.id:Ljava/lang/String;
  #20 = NameAndType        #21:#12        // id:Ljava/lang/String;
  #21 = Utf8               id
  #22 = Methodref          #23.#24        // java/io/PrintStream.println:(Ljava/lang/String;)V
  #23 = Class              #25            // java/io/PrintStream
  #24 = NameAndType        #26:#27        // println:(Ljava/lang/String;)V
  #25 = Utf8               java/io/PrintStream
  #26 = Utf8               println
  #27 = Utf8               (Ljava/lang/String;)V
  #28 = Fieldref           #8.#29         // org/cainiao/basic/compile/User.PARENT:Lorg/cainiao/basic/compile/Parent;
  #29 = NameAndType        #30:#31        // PARENT:Lorg/cainiao/basic/compile/Parent;
  #30 = Utf8               PARENT
  #31 = Utf8               Lorg/cainiao/basic/compile/Parent;
  #32 = Methodref          #23.#33        // java/io/PrintStream.println:(Ljava/lang/Object;)V
  #33 = NameAndType        #26:#34        // println:(Ljava/lang/Object;)V
  #34 = Utf8               (Ljava/lang/Object;)V
  #35 = String             #36            // success
  #36 = Utf8               success
  #37 = Methodref          #23.#38        // java/io/PrintStream.println:(I)V
  #38 = NameAndType        #26:#39        // println:(I)V
  #39 = Utf8               (I)V
  #40 = Fieldref           #8.#41         // org/cainiao/basic/compile/User.parentName:Ljava/lang/String;
  #41 = NameAndType        #42:#12        // parentName:Ljava/lang/String;
  #42 = Utf8               parentName
  #43 = Utf8               STATUS
  #44 = Utf8               ConstantValue
  #45 = Utf8               COLOR
  #46 = Utf8               I
  #47 = Integer            2
  #48 = Utf8               Code
  #49 = Utf8               LineNumberTable
  #50 = Utf8               getName
  #51 = Utf8               ()Ljava/lang/String;
  #52 = Utf8               setName
  #53 = Utf8               <clinit>
  #54 = Utf8               SourceFile
  #55 = Utf8               User.java
{
  public static java.lang.String id;
    descriptor: Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC

  private static final org.cainiao.basic.compile.Parent PARENT;
    descriptor: Lorg/cainiao/basic/compile/Parent;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.String STATUS;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: String success

  private static final int COLOR;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: int 2

  private java.lang.String name;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  public org.cainiao.basic.compile.User();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
         0: aload_0
         1: invokespecial #1                  // Method org/cainiao/basic/compile/Parent."<init>":()V
         4: return
      LineNumberTable:
        line 8: 0

  public java.lang.String getName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
         0: aload_0
         1: getfield      #7                  // Field name:Ljava/lang/String;
         4: areturn
      LineNumberTable:
        line 18: 0

  public void setName(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
         0: getstatic     #13                 // Field java/lang/System.out:Ljava/io/PrintStream;
         3: getstatic     #19                 // Field id:Ljava/lang/String;
         6: invokevirtual #22                 // Method java/io/PrintStream.println:(Ljava/lang/String;)V
         9: getstatic     #13                 // Field java/lang/System.out:Ljava/io/PrintStream;
        12: getstatic     #28                 // Field PARENT:Lorg/cainiao/basic/compile/Parent;
        15: invokevirtual #32                 // Method java/io/PrintStream.println:(Ljava/lang/Object;)V
        18: getstatic     #13                 // Field java/lang/System.out:Ljava/io/PrintStream;
        21: ldc           #35                 // String success
        23: invokevirtual #22                 // Method java/io/PrintStream.println:(Ljava/lang/String;)V
        26: getstatic     #13                 // Field java/lang/System.out:Ljava/io/PrintStream;
        29: iconst_2
        30: invokevirtual #37                 // Method java/io/PrintStream.println:(I)V
        33: getstatic     #13                 // Field java/lang/System.out:Ljava/io/PrintStream;
        36: aload_0
        37: getfield      #40                 // Field parentName:Ljava/lang/String;
        40: invokevirtual #22                 // Method java/io/PrintStream.println:(Ljava/lang/String;)V
        43: aload_0
        44: aload_1
        45: putfield      #7                  // Field name:Ljava/lang/String;
        48: return
      LineNumberTable:
        line 22: 0
        line 23: 9
        line 24: 18
        line 25: 26
        line 26: 33
        line 27: 43
        line 28: 48

  static {};
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: new           #2                  // class org/cainiao/basic/compile/Parent
         3: dup
         4: invokespecial #1                  // Method org/cainiao/basic/compile/Parent."<init>":()V
         7: putstatic     #28                 // Field PARENT:Lorg/cainiao/basic/compile/Parent;
        10: return
      LineNumberTable:
        line 11: 0
}
*/
}
